﻿Imports System.Collections.ObjectModel
Imports Co9320.NamaAlert.ViewModel

Public Class NamaAlertDataContext
    Inherits ViewModelBase

    Private _AlertedProgramsCount As Integer
    Public Property AlertedProgramsCount() As Integer
        Get
            Return _AlertedProgramsCount
        End Get
        Set(ByVal value As Integer)
            _AlertedProgramsCount = value
            OnPropertyChanged("AlertedProgramsCount")
        End Set
    End Property

    Private _AlertedStationsCount As Integer
    Public Property AlertedStationsCount() As Integer
        Get
            Return _AlertedStationsCount
        End Get
        Set(ByVal value As Integer)
            _AlertedStationsCount = value
            OnPropertyChanged("AlertedStationsCount")
        End Set
    End Property

    Private _LivePrograms As New ObservableCollection(Of LiveProgram)
    Public ReadOnly Property LivePrograms() As ObservableCollection(Of LiveProgram)
        Get
            Return _LivePrograms
        End Get
    End Property

    Public ReadOnly Property Stations() As ObservableCollection(Of Station)
        Get
            Return _userSettings.Stations
        End Get
    End Property

    Public ReadOnly Property Keywords() As ObservableCollection(Of Keyword)
        Get
            Return _userSettings.Keywords
        End Get
    End Property

    Private _userSettings As New UserSettings
    Public Sub SetUserSettings(ByVal settings As UserSettings)
        _userSettings = settings
    End Sub

    Public ReadOnly Property Settings() As UserSettings
        Get
            Return _userSettings
        End Get
    End Property

    Private _statusBarText As String = ""
    Public Property StatusBarText() As String
        Get
            Return _statusBarText
        End Get
        Set(ByVal value As String)
            _statusBarText = value
            OnPropertyChanged("StatusBarText")
        End Set
    End Property

    Private _runningTimer As Boolean
    Public Property RunningTimer() As Boolean
        Get
            Return _runningTimer
        End Get
        Set(ByVal value As Boolean)
            _runningTimer = value
            OnPropertyChanged("RunningTimer")
        End Set
    End Property

    Public ReadOnly Property Version() As String
        Get
            Return My.Application.Info.Version.ToString
        End Get
    End Property

End Class
